﻿Feature: Auto-Mocking Container
	As a developer, I want my test container to automatically mock objects during service resolution,
	assist in concrete type creation, and simplify the retrieval and setup of custom mock constructs.

# Unless otherwise specified, all container behavior in this specification will be "loose."
# This means that mocked components retrieved via the container should not throw exceptions
# when methods are called that have no corresponding setup.

Scenario: Basic
	Given a new container
	When I create a test component using the default activator
	And I run the test component
	Then no exceptions should be thrown

Scenario: Custom Activator
	Given a new container
	And a new service
	When I create a test component using a custom activator
	Then the component should exist
	And the component's properties should hold expected values, per the activator that was used

Scenario: Registration
	Given a new container
	When I register a service with an implementation type
	And I resolve the service
	Then the service should exist
	And the service should be mocked